package com.itheima.createthreaddemo;

public class CreateThreadDemo1 {

    // main方法本身是由主线程调用的
    public static void main(String[] args) {
        // 创建线程对象
        Thread t = new PrimeThread();
        // 启动线程
        t.start();
        // main线程调用
        getPrime();
    }

    // 普通的求素数方法
    public static void getPrime() {
        System.out.println(" getPrime()");
        // 统计计算1-10000内的素数的时间
        long startTime = System.currentTimeMillis();
        for (int i = 2; i <= 100; i++) {
            boolean flag = true;
            for (int j = 2; j * j <= i; j++) {
                if (i % j == 0) {
                    flag = false;
                    break;
                }
            }
            if (flag) {
                System.out.println("getPrime的到的素数：" + i);
            }
        }
        long endTime = System.currentTimeMillis();
        System.out.println("getPrime() 运行时长：" + (endTime - startTime) + "毫秒");
    }
}



// 创建线程方式一：继承Thread类，重写run方法，调用start方法启动线程
class PrimeThread extends Thread{
    @Override
    public void run() {
        System.out.println(" PrimeThread run()");
        // 统计计算1-1000内的素数的时间
        long startTime = System.currentTimeMillis();
        for (int i = 2; i <= 100; i++) {
            boolean flag = true;
            for (int j = 2; j * j <= i; j++) {
                if (i % j == 0) {
                    flag = false;
                    break;
                }
            }
            if (flag) {
                System.out.println("PrimeThread的到的素数：" + i);
            }
        }
        long endTime = System.currentTimeMillis();
        System.out.println("PrimeThread 运行时长：" + (endTime - startTime) + "毫秒");
    }
}
